/*
 * Copyright (c) 2024 Shenzhen Kaihong Digital Industry Development Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef __SLE_IPERF_TEST_UTIL_H__
#define __SLE_IPERF_TEST_UTIL_H__

#ifdef __cplusplus
extern "C" {
#endif // __cplusplus

#define CHECK_NULL_PTR_RETURN_VOID(item) \
if ((item) == NULL) { \
    return; \
}
#define HI3863_SEND_MAX_DATA_LEN 460
#define HI3863_MAX_MTU 512
#define HI3863_MTU_VERSION 0

#define LATENCY_TEST_SEND_TIMES_DEFAULT     50
#define LATENCY_TEST_SEND_INTERVAL_DEFAULT  20
#define THROUGHPUT_TEST_PACKAGE_SUM_DEFAULT 10000

#define MSG_ID_LONG_TERM_STABILITY_TEST                 0x20
#define LONG_TERM_STABILITY_TEST_CALC_CYCLE_SECONDS     (30UL)
#define LONG_TERM_STABILITY_TEST_TIMES_DEFAULT          60
#define LONG_TERM_STABILITY_TEST_INTERVAL_DEFAULT       1000
#define SLE_RECV_ECHO_DATA_TIMEOUT_SECONDS_DEFAULT      10
#ifdef __cplusplus
}   // extern "C"
#endif // __cplusplus

#endif // __SLE_IPERF_TEST_UTIL_H__